In an IP Multimedia System (IMS), a geo-local service is a service characterized by an access number that has meaning in the current geographic location of the user. For example, dialing *55 from a mobile terminal (e.g., a cell phone) in Oklahoma will deliver the caller to the closest highway emergency assistance, whereas in Texas *377 must be used. Dialing *55 in Texas would either route to something unexpected, or not be completed at all. There are many possible examples of geo-local services, characterized by numbers such as *pizza, or *taxi.
Conventionally in IMS, services and routing decisions are all handled in the user's home network. One reason this is done is for consistency, so that services such as call forwarding, call transfer, call waiting, etc. work consistently regardless of where the user is roaming. However, when a user roams to another geographic area, the user's home network typically will not understand how to properly route calls made to geo-local numbers in the visited network.
Even if the number is valid, e.g., if *55 also is valid in the user's home state of Nebraska, the home network would need to have a database listing Oklahoma as well as Nebraska highway assistance geographic boundaries and their regular land access numbers to route the call. This can get cumbersome when international travelling, which is an increasingly common occurrence, is considered. Under the existing IMS mechanism, a user from Sweden visiting Oklahoma should not expect his or her home server in Stockholm to know the auto repair facility nearest the user's broken down car.